package com.cizzy.favorite.service;

import com.cizzy.favorite.common.Result;
import com.cizzy.favorite.entity.Collect;
import com.baomidou.mybatisplus.extension.service.IService;
import com.cizzy.favorite.entity.Favorite;
import com.cizzy.favorite.entity.dto.VideoDTO;
import com.cizzy.favorite.entity.vo.CollectRequest;
import com.cizzy.favorite.entity.vo.FavoriteRequest;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author crissy-月下闲人
 * @since 2023-11-03
 */
public interface ICollectService extends IService<Collect> {

    Result<Collect> createCollect(CollectRequest collectRequest);

    Result<Collect> cancelCollect(CollectRequest collectRequest);

    Result<Boolean> isCollectd(Long userId, Long videoId);

    Result<List<VideoDTO>> getCollectById(Long userId);

    Result<List<VideoDTO>> getCollectPageById(Long userId, Integer page, Integer pageSize);

    Result<String> toCollect(Long id);

    Result<List<VideoDTO>> getCollectList();
}
